﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ZuluTrade.Core
{
    public class ZuluRow 
    {
        #region Свойства
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Provider Ticket</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Type</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Lots</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Currency</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Date Opened</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Date Closed</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Price Opened</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Price Closed</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Highest Profit</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Worst Drawdown</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Roll</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Total Pips</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Net Profit &amp; Loss</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Live Trade?</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Provider Name</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Accumulated Pips</Data></Cell>
        //<Cell ss:StyleID="s57"><Data ss:Type="String">Accumulated Profit</Data></Cell>

        //<Cell ss:StyleID="s58"><Data ss:Type="String">300.1285138114603</Data></Cell>
        //<Cell ss:StyleID="s59"><Data ss:Type="String">BUY</Data></Cell>
        //<Cell ss:StyleID="s59"><Data ss:Type="Number">10</Data></Cell>
        //<Cell ss:StyleID="s59"><Data ss:Type="String">GBP/CHF</Data></Cell>
        //<Cell ss:StyleID="s60"><Data ss:Type="String">2010/09/23 22:49:00</Data></Cell>
        //<Cell ss:StyleID="s60"><Data ss:Type="String">2010/09/24 00:00:38</Data></Cell>
        //<Cell ss:StyleID="s58"><Data ss:Type="String">1.54500</Data></Cell>
        //<Cell ss:StyleID="s58"><Data ss:Type="String">1.54600</Data></Cell>
        //<Cell ss:StyleID="s59"><Data ss:Type="Number">10</Data></Cell>
        //<Cell ss:StyleID="s59"><Data ss:Type="Number">-14</Data></Cell>
        //<Cell ss:StyleID="s59"><Data ss:Type="String">0</Data></Cell>
        //<Cell ss:StyleID="s59"><Data ss:Type="Number">100</Data></Cell>
        //<Cell ss:StyleID="s59"><Data ss:Type="String">101.34</Data></Cell>
        //<Cell ss:StyleID="s59"><Data ss:Type="String">YES</Data></Cell>
        //<Cell ss:StyleID="s59"><Data ss:Type="String">Genexus</Data></Cell>
        //<Cell ss:StyleID="s59"><Data ss:Type="String">3171.3</Data></Cell>
        //<Cell ss:StyleID="s58"><Data ss:Type="String">27934.31</Data></Cell>

        public String ProviderTicket
        {
            get; set;
        }

        public String Type
        {
            get;
            set;
        }

        public Double Lots
        {
            get;
            set;
        }

        public String Currency
        {
            get;
            set;
        }

        public DateTime DateOpened
        {
            get;
            set;
        }

        public DateTime DateClosed
        {
            get;
            set;
        }

        public String PriceOpened
        {
            get;
            set;
        }

        public String PriceClosed
        {
            get;
            set;
        }

        public Double HighestProfit
        {
            get;
            set;
        }

        public Double WorstDrawdown
        {
            get;
            set;
        }

        public String Roll
        {
            get;
            set;
        }

        public Double TotalPips
        {
            get;
            set;
        }

        public String NetProfitAndLoss
        {
            get;
            set;
        }

        public String LiveTrade
        {
            get;
            set;
        }

        public String ProviderName
        {
            get;
            set;
        }

        public Double AccumulatedPips
        {
            get;
            set;
        }

        public String AccumulatedProfit
        {
            get;
            set;
        }
        #endregion

        #region Конструктор

        #endregion

        public override string ToString()
        {
            StringBuilder sb = new StringBuilder();
            //sb.Append(String.Format("Provider Ticket: {0}; ", this.ProviderTicket));
            //sb.Append(String.Format("Type: {0}; ", this.Type));
            //sb.Append(String.Format("Lots: {0}; ", this.Lots));
            //sb.Append(String.Format("Currency: {0}; ", this.Currency));
            sb.Append(String.Format("Date Opened: {0}; ", this.DateOpened));
            sb.Append(String.Format("Date Closed: {0}; ", this.DateClosed));
            //sb.Append(String.Format("Price Opened: {0}; ", this.PriceOpened));
            //sb.Append(String.Format("Price Closed: {0}; ", this.PriceClosed));
            sb.Append(String.Format("Highest Profit: {0}; ", this.HighestProfit));
            sb.Append(String.Format("Worst Drawdown: {0}; ", this.WorstDrawdown));
            //sb.Append(String.Format("Roll: {0}; ", this.Roll));
            sb.Append(String.Format("Total Pips: {0}; ", this.TotalPips));
            //sb.Append(String.Format("Net Profit and Loss: {0}; ", this.NetProfitAndLoss));
            //sb.Append(String.Format("Live Trade: {0}; ", this.LiveTrade));
            sb.Append(String.Format("Provider Name: {0}; ", this.ProviderName));
            //sb.Append(String.Format("Accumulated Pips: {0}; ", this.AccumulatedPips));
            //sb.Append(String.Format("Accumulated Profit: {0}; ", this.AccumulatedProfit));
            return sb.ToString();
        }

        public int CompareTo(object obj) {
            throw new NotImplementedException();
        }
    }
}
